package com.meepo.sdk.component.view

import android.os.Bundle
import android.view.View
import androidx.annotation.LayoutRes
import com.trello.rxlifecycle2.LifecycleTransformer

/**
 * activity 和 fragment 通用操作
 * 抽象出接口以便公用
 */
interface IView {

    /**
     * 设置页面布局 id
     */
    @LayoutRes
    fun setUpContentLayout(): Int

    /**
     * 初始化布局
     */
    fun initView(view: View, savedInstanceState: Bundle?)

    /**
     * 初始化数据
     */
    fun initData()

    /**
     * 绑定生命周期
     */
    fun <T> bindToLife(): LifecycleTransformer<T>
}